K81 Introduction to PIC 16F84A
Programming
Kit 160
PIC16F62x Experimenter & Programmer.
K117 PICALL PIC
Programmer
K96 PIC
Programmer 8/18/28/40 pin serial PICs
K119 PIC Programmer 8/18 pin serial
PICs
Books to learn PIC
Programming
BASCOM book
and Compiler
K121 Atmel
89Cx051 Programmer
K122
Atmel AVR Programmer
Getting Started in AVR
Programming.
K123 Atmel
89C5x and 89Cx051 Programmer
K151 EEPROM Programmer
K53. Codepad/Alarm
Southern Cross I & II web page
For a good discussion of whether to use PIC or Atmel uC's go to dontronics.com
Previous Upgrade Packs:
NOTE: if your kit documentation says to get diypack8 or diypack11 or
diypack14 etc. then you MUST get that version so that the supplied firmware runs
with the MicroPro.exe version in the corresponding diypack. After you get the
kit going then upgrade to the latest version by programming the firmware with
the appropriate hex file from the latest version, replacing the firmware IC then
running the latest MicroPro.exe.
diypack18.zip February 20, 2004.
diypack16.zip MicroPro V251103. Protocol P00D
diypack15.zip MicroPro V101103, Protocol P00D.
diypack14.zip MicroPro V061003, Protocol P00A. We changed the name from 'Build' in the previous version to 'Protocol' since the change is in the communications between the PC and the Kit rather than a software renewal.
diypack12 was only out for 3 days before being replaced by diypack14. There was no diypack13. We have deleted diypack12.
diypack11 MicroPro V090903
diypack10 MicroPro
V220803
This version has many new features:
- includes build numbers so
the firmware can be matched with the MicroPro version
- support for 24Cxx I2C
EEPROM
- support for Kit 150 just released
Just use the hex file included in the package for programming your new PIC16F628-20/P firmware. Everyone should upgrade to this version since build numbers are now included in the EEPROM of the chip. Make sure to read the readme.txt. You have to program your own new firmware chip then replace it in the programmer before you run the new MicroPro.exe program.
diypack9 MicroPro
V310703
diypack8
MicroPro V100703
diypack7 MicroPro V030403
After your Kit is working then you should upgrade the firmware to the appropriate hex files in diypack12 since the hex files now included a Communiucations Protocol number (P00A) which can be easily matched to this and future MicroPro versions. (It was called a Build number in diypack11.)
Here is a list of PICs MicroPro will program:
12C508 12C508A 12C509
12C509A 12C671 12C672 12CE673 12CE674 12F629 12F675 16C505 16C554 16C558 16C61
16C62 16C62A 16C62B 16C63 16C63A 16C64 16C64A 16C65 16C65A 16C65B 16C66 16C66A
16C67 16C71 16C71A 16C710 16C711 16C72 16C72A 16C73 16C73A 16C74 16C74A 16C74B
16C83 16C84 16F627 16F627A 16F628 16F628A 16F648A 16F73 16F74 16F76 16F77 16F83
16F84 16F84A 16F630 16F676 16F870 16F871 16F872 16F873 16F873A 16F874 16F874A
16F876 16F876A 16F877 16F877A 18F242 18F248 18F252 18F258 18F442 18F448 18F452
18F458 24LC256 24LC515 24C01 24C02 24C04 24C08 24C16
http://www.ftdichip.com/FTWinDriver.htm
Then you can get AN232-05 from http://www.ftdichip.com/FTApp.htm to read how to install the drivers. In my PC I just extracted the drivers to a folder C:\diyprgmc\USB then did Start/Settings/Control Panel/Add Hardware. (diypgmrc folder is created by diypack9.zip.) Disregard the Microsoft uncertified warning about the driver.
March 23, 2003. We are rapidly developing three new PIC programmers using the USB port: kits 128 149 and 150. Originally there were going to be software packages for all three but it became clear that the one software package covering all three kits would be best.
March 24 a new software package for Kit 149 is released with a hardware change needed: replace the 4.000MHz crystal by a 6.000MHz crystal. More details below. Then all 3 kits will now be operating on the same clock speed and the user interface will be the same for all three kits. The new Kit 149 software (V250303) also fixed some bugs in the previous V030303 release.
Kit 149 (version A PCB). USB & Serial Port PIC Programmer. All thru-hole components except the FT232BM chip. (This version is now sold out.)
May 11. Kit 149 version B PCB now released. It adds ICSP and take off 1 crystal, some resistors & other components.) Note the ZIF socket is not supplied with the kit. It must be bought extra. An ordinary 40 pin IC socket is supplied with the kit.
Kit 150. ('Kit 149B without the serial port.') USB PIC Programmer, ICSP programming supported. Mostly surface mount. ICSP mode. Some thru-hole components. Released august 22, 2003..
Kit 128. USB all-Flash PIC Programmer. No external power supply. No ICSP. Mostly surface mount. 40 pin wide slot ZIF socklet supplied. All surface mount components are presoldered. Released april 5, 2003.
Released 12/2002. A DPST switch switches between USB and serial modes. The kit uses a modern, surface-mount FT232BM presoldered on the solder side of the board.
Software
March 23, 2003. We have struck some problems with the V030303 User Interface software. Please go back to the V110103 version together with either of the following hex files for the firmwware. You can direct program the firmware using these files. We will sort out the problem in the next User Interface release.
V110103 User Interface software, K149_v4.zip
firmware hex files. These hex files can be direct programmed. you do not have to use the Options/Upgrade. Use the k149_v4.hex first.
NOTE: if you have put in the no-keypress programming link after you used V030303 you MUST remove it when running this earlier version.
BEFORE you upgrade to this version you MUST have a 6.000MHz crystal available. Use the hex file 'k149av61.hex' contained in the zip file to program a new firmware IC. Then change the 4.000MHz crystal to a 6.000 MHz crystal then you are upgraded. Then add the link for the no-keypress programming mode.
April 3, 2003. Since the same User Interface is now going to be used for Kits 149 (A and B), 128 and 150 here is the latest upgrade which now unpacks in c:\diypgmr. In addition, this upgrade can recognize which programmer board is connected to the PC. For Kit 149A you MUST program a new firmware chip FIRST before you run the latest version. Read the upgrade.txt in the unzipped file. Get the latest version from here. diypack7.zip
May 11. Kit 149 version B PCB now released. It adds ICSP and take off 1 crystal, some resistors & other components.) 40 pin wide slot ZIF socket optional for both.
Download the 13 page User Manual here. (This is also in the User Interface download.)
Download k128intro.pdf documetation which comes with the kit.
Please note this programmer does NOT program non-Flash chips! Please make sure you know which PIC chips are Flash (the ones with the 'F'!) and which are not.
Tony's answer: What is happening is that most compilers place :020000040000FA at the start of INHX32 files to signify address 0000:xxxx The 04 identifier specifies an upper 16 bit address, the next 4 digits, '0000' in this case. :020000040030CA This one specifies upper 16 bit address of '3000' = 3000:xxxx which is the address for the fuse data. Your compiler does not place :020000040000FA on the first HEX file line so MicroPro gets confused and thinks it is not an INHX32 file. diypack17 (now available) has an option to disable this message.
40 page User Manual zipped pdf
If you use MPLAB to compile programs make sure you compile using 1NHX8M selected.
Kit 160 40 page User Manual, zipped pdf
This kit is discontinued in 9/2003 because it does not run on some XP Pro machines.
These four PIC Programmer kits use the proven software of Bojan Dobaj. He is actively supporting his software as operating systems change and new PICs are released. New PICs can be added to the 'device.ini' file so you do not have to worry about the software getting out-of-date as new PICs are released.
Note there are several other sources of free software for kits 96 and 119. try ic-prog.com which specifically supports both Kits 96 and 119, and Nigel Goodwin.
Program all 12 14 & 16 series PICs - serial and parallel programming method. This includes the 16C54-58 PICs.
Price includes DOS and Windows software and a firmware IC. Requires one on-board wide-slot 40-pin ZIF socket (not supplied) only for maximum flexibility. Only 1 ZIF socket needed - NOT 2 or even 3 ZIF sockets which some other programmers need. Software tells you where to place the PIC you are programming as shown in the following screen shot:
Screen shot from V0.09a software
Latest 11/2000 double-sided PCB which does not require links.
Latest PCB assembled with 3M ZIF socket.
Revised 11/2000 for the doublesided PCB. Schematic now included.
Download the latest Windows software for Kit 117 from picallw.com. Note addition of some resistors to the PCB is needed to program Atmel AVR IC's and Scenix IC's. See the help file in the PICALL for details.
Note that the PICALL for Windows software has built-in software support for Kit 81, Kit 96 and 119 freeware 16F84 programming as well as the Dontronics DT-001.
The kit is driven from the Parallel Printer port of a PC using a straight thru M/F 25 pin cable. These are readily available.
There is no software Registration, as a programmed chip is supplied in the kit, and the PC driver software is free.
Price includes all parts, PCB and airmail registered postage. The amount charged to your credit card is the current exchange rate rounded up to the nearest Australian Dollars because our Credit Card Order Form. based in Australia.
For volume programming and maximum flexibility the kit requires one on-board wide-slot 40-pin ZIF socket. The software tells you where to place the PIC you are programming. (Note some older designed PIC programmers available like the Warp-13 have 2 or even 3 (!) ZIF sockets on-board. Only one wide-slot 40 pin ZIF socket is necessary with PICALL.) The reason the 40 pin ZIF socket is not included is because these are manufactured in north America while the kit is packed in Hong Kong. Since most kits are sold in Europe & north America it is cheaper if you buy the socket locally.
All software and other documentation is available from Bojan Dobaj's Home Page at picallw.com
For a full list of the devices programmed by Kit 117 visit picallw.com
This is an enhanced K117. It will program some Scenix uC's, Atmel AVR's and EEPROMS. See picallw.com for lists of the uC's it will program.
In addition it has an header for USP programming of PICs and Atmels. A 6-pin header and harness come with the kit.
June, 2002. K144 now supports PIC18Xxxx chips. Get the latest software for PICALL for Windows software. V0.13c. october, 2002.
July 4, 2002. K144 now support programming PIC18Fxxx chips. You must use the latest software for PICALL for Windows software. V0.12c. May, 2002. A small hardware addition is needed for K144. No hardware change is needed for K96. Here is the latest documentation for K144 which describes the required change.
July 4, 2002. K96 and K144 now support programming PIC18Fxxx chips. You must use the latest software for PICALL for Windows software. V0.12c. May, 2002. A small hardware addition is needed for K144. No hardware change is needed for K96. Here is the latest documentation for K144 which describes the required change.
DIY KIT
96. Serial PIC Programmer.
This 8, 18, 28 & 40 pin PICmicro programmer Kit is available
now.
It runs off the Parallel Printer Port
of a PC.
The total cost of the kit of parts and PCB is
$25USD.
This price includes world wide
airmail postage. The price does not include the registration
of the software. See below.
Price includes all parts and a single-sided PCB. The amount charged to your credit card is the current exchange rate rounded up to the nearest Australian Dollars because our Secure Order Form is based in Australia.
For a full list of the devices programmed by Kit 117 visit picallw.com but the lists includes:
PIC12C5xx, PIC14000, PIC16C554, PIC16C556, PIC16C558, PIC16C61, PIC16C62,
PIC16C62A, PIC16CR62, PIC16C63, PIC16C64, PIC16C64A, PIC16CR64, PIC16C65,
PIC16C65A, PIC16C66, PIC16C67, PIC16C620, PIC16C621, PIC16C622, PIC16C710,
PIC16C71, PIC16C711, PIC16C72, PIC16C73, PIC16C73A, PIC16C74, PIC16C74A,
PIC16C74B, PIC16C76, PIC16C77, PIC16F83, PIC16CR83, PIC16C84, PIC16F84,
PIC16CR84, PIC16C923, PIC16C924, PIC16C642, PIC16C662, PIC16C715, PIC16C87x
The P16PRO software will work under DOS, W3.1 or W9x.
You must download the latest version of the P16PRO software from:
picallw.com
Here is V3.63. K96. P16PRO. V3.63. january, 2000. 295K. This is the last DOS version.
This software will allow you to use probably all "David Tait" variant programmers to program a very large number of PICmicro devices via the Parallel Printer Port of a PC. You just have to change the Hardware Setup boxes and the software will do it all for you.
On-board bridge rectifier gives you a full flexible range of power supply
input from any power supply:
17-30V DC
13-20V AC (I had 12VAC before but
this has proved too low.)
New PICs can be added by entering them in the device.ini file of the software. You do not have to download new software everytime a new PIC chip is released.
Computer tooooooo fast for the software? Adjust the ProgDelay in the P16PRO.INI file. Also get the latest version of P16PRO. V3.55 (1/99) fixed timing problems in PIC12C50xA.
Parallel programmed PIC’s - 16C5X - are not supported by this programmer.
We have made space on the board for C5/330pF from pin 6 of the 74LS05/7406 to ground since there has been one only report that it may be required. We have not supplied this component.
Construction: There are 4 links to add to the board. We have supplied 8 18 28 & 40 pin IC sockets. However, for maximum flexibility in programming you may wish to supply your own 40 pin wide-slot ZIF socket. Use the 14 pin IC socket to mount the 74LS05. You will need to connect the programmer to the parallel port of a PC using a straight through cable from the on-board 25 pin PCB-mounted subd connector.
P16PRO Software Registration:
The P16PRO
software is shareware. It lasts for 21 days. To get a registration key you need
to register it. You can Register
P16PRO PICmicro software at dontronics.com using his web based secure
Credit Card system for $15USD.
Note freeware software for kit 96 is also available here.
DIY KIT 119. Serial PIC Programmer. Kit 119. P16PRO8/18
Some people only want to be able to program 8 or 18 pin serial PICs, for
example, for Sony Playstations. Kit 119 is for them. It uses the same P16PRO
software as Kit 96 but only programs 8 and 18 pin PICs.
Price includes all parts and a single-sided PCB. The amount charged to your credit card is the current exchange rate rounded up to the nearest Australian Dollars because our Secure Order Form is based in Australia.
This price includes world wide airmail postage. The price does not include the registration of the software. See below.
On-board bridge rectifier gives you a full flexible range of power supply
input from any power supply:
17-30V DC
12-20V AC
New PICs can be added by entering them in the device.ini file of the software. You do not have to download new software everytime a new PIC chip is released.
k119.pdf Documentation Read all about the programmer and what it does.
Apart from the fact that this programmer doesn't support the 28 and 40 pin devices, all other features are the same as the KIT96.
These are the PICs which Kit 119 will program:
PIC12C5XX, PIC16C67X,
PIC12CE67X, PIC16C61, PIC16C715, PIC16C67, PIC16C620, PIC16C621, PIC16C62,
PIC16C710, PIC16C71, PIC16C711, PIC16F83, PIC16CR83, PIC16C84P, IC16F84,
PIC16CR84, PIC16C642, PIC16C711
P16PRO Software Registration:
The P16PRO
software is shareware. It lasts for 21 days. To get a registration key you need
to register it. You can Register
P16PRO PICmicro software at dontronics.com using his web based secure
Credit Card system.
In-line parallel port, hardware switchboxs can cause programming problems. If you have one and have programming problems immediately remove the switch box.
Need a ZIF socket to go with these kits? See ZIF sockets. Note you can use the advanced Kit 117 software picallw.exe to program and test kits 96 and 119. See test document here.
Note software expires after 21 days and you must registered it by email at dontronics.com or with Bojan Dobaj.
Assembled kit using 3 IC sockets instead of a wide-slot ZIF socket.
Note you can use the advanced Kit 117 software picallw.exe to program and test K96. See test document here.
Note: registration of this software is required (by email) for $US20 after a 21 day trial period. Software will work under DOS, W3.11 or W9x. Connect to a PC with straight-through 25pin M/F cable.
Learn to Program PIC's using these four books from SQUARE-1
I am an agent for the Bascom compilers for Atmel uC's.
Read this file to learn how to test and buy the Bascom 8051 Compiler.
Read this file to learn how to test and buy the Bascom AVR Compiler.
Kit 121. Atmel 89Cx051 Programmer No special software required other than a terminal emulation program. In Windows these terminal programs come with it: Terminal (W3.11) or Hyperterminal (W95/98). Can be used on any computer and operating system. Support for 89C1051U added 8/2000
Assembled kit. This is the prototype. Actual kit has 9 pin serial connector. ZIF socket not supplied.
Sample batch file to help automate volume programming. k121bat.zip Change it to suit your tastes.
term.zip No frills terminal program to program Kits 121 & 122. Easier than using Hyperterminal. DOS based but will run under W9x.
Kit 122. Atmel AVR programmer. To program 20-pin DIP - 90S1200, 90S2313, and 40-pin DIP - 90S4414, 90S8515. Programs at 9600 baud. Parallel mode. With the optional adaptor board you can now program AT90S4434 and AT90S8535. It will not program the 8-pin AVR devices (90S2323, 90S2343).
K122 assembled & tested. This is how we sell the assembled & tested Kit 122. the choice of ordinary IC sockets or ZIF sockets is left to the buyer.
Adaptor board for K122 to program 90S4434/8535.
underside view of adaptor board
top
view of adaptor board
Customer Question: but you don't need a programmer to program AVR's. Just a few lines to the parallel port will do it - see dontronics.com! "
Response: the AVR's have a serial programming mode called ISP - In System Programming. Yes you can use a few lines of code from the parallel port to programming the flash, eprom and lock bits. BUT the AVR chips have 'fuse' bits which are not accessible in serial programming mode. For example, in our Kits 129 and 154 we have to program one of the fuse bits RCEN to enable the internal oscillator. This would not be possible using serial programming. Also there is a fuse bit to disable serial programming. If this fuse bit is programmed then the chip is not accessible at all using ISP. It would then only be programmable using a programmer like the "parallel-mode" Kit 122.
Of course you could make a "parallel-mode" programmer to operate using the parallel port instead of the serial port like Kit 122. But we decided against this because it would require special software to run on each type of computer. The BIG advantage of Kit 122 is that all the intelligence is in firmware on board the kit. Kit 122 will work on all types of computers. All that is needed is a terminal/communications program which all computers have.
The disadvantage of using an intelligent programmer like Kit 122 is that upgrading the programmer to program new chips requires reprogramming the firmware. Since we do not want to release the hex code this means returning the firmware to us.
Kit 117 is an example where we have got special Windows-only software running on the parallel port. Upgrading for new PIC chips is done by simply adding it to the 'device.ini' file.
Getting Started in AVR programming. V4. November, 2000. now available.
Davis vanHorn writes: it was first written to illustrate how to set up the
AVR8515, and how to use the major on-board peripherals, but like anything left
in the refigerator too long, it's been growing. It has a bunch of handy routines
for external devices, like R/C servos, LCD and VFD displays, stepper motors..
Version 4.0 has all that, plus:
- the elimination of the old linear buffers.
They've been replaced with variable length circular buffers. I made them
variable length, in preparation for a dynamic allocation scheme, but I'm not
sure at this point if it's worth implementing. That's part of what I'm exploring
for version 5.0
- the implementation of a language interpreter, reading commands with optional parameters from EEPROM. This also means that the program in EEPROM is alterable, so this is a starting point for a robot or other device that could "learn". The language only has four commands implemented, but I didn't want to make it too complicated at first. It is trivially easy to add your own commands, and they can be simple procedures, or they could alter the behaviour of other parts of the system. It's entirely up to the user. Currently implemented commands: Delay (ms), Servo position (servo) (position), Loop, and Skip (commands to skip) I didn't implement variables, but adding a few fixed variables would be trivial. I'm looking for a more flexible scheme that would allow me to allocate variable memory dynamically, but again, that's something for 5.0
- there are many cleanups and improvements in the other routines as well. The hardware assignments are easier to deal with, and I've pulled in all the rom and ram allocations to the routines that use them, rather than having them in "tables.asm" and "equates.asm"
- tt's still fast, and it uses just over half the rom (as configured) and less than half the ram (again, as configured) In a real application, you probably allocate only a small subset of the buffers I have in this demo, but I wanted to make it visually "busy", so I am using all eight servos (one is controlled by the interpreted program, one is controlled by the random generator, and the rest simply ramp), a VFD display (scrolling the top and bottom lines in opposite directions within the same buffer), and LCD display with different text, but scrolling similarly, and a "Quick brown fox" output on the serial port, plus morse code output with randomized messages. Given all that, the CPU is still nearly idle :)
Kit 123. Atmel 89xxxx Programmer.
To program
· 89C1051, 89C2051 and 89C4051
· 89C51, 89LV51
· 89C52,
89LV52
· 89C55, 89LV55
· 89S8252, 89LS8252
· 89S53, 89LS53
. 87F51,
87F52 (otp) support added august, 2000
Price $US49 plus $10 postage and packaging.
Two DOS utilities are available for downloading to examine and reorder fragmented hex files which some compilers produce. (Fragmented hex files can choke any serial programming software not expecting it.) hexmap.exe and reorder.exe
term.zip No frills terminal program written by Frank to program Kits 121 122 and 123. Easier than using Hyperterminal. DOS based but will run under W9x.
K151 Kit 151 EEPROM Programmer
PC Parallel port programmer for the 24xxx, I2C bus and 93xxx EEPROMS. 8 bit programming mode only. We use a 24C16 Software in the Christmas Tree Kit 103 so that was the main reason we did the kit. A 16 pin ZIF socket is used on-board. The top 8 pins are for the 24xxx; the bottom 8 are for the 93xxx SPI EEPROM's.
k53. pdf documentation Codepad/Alarm using 68HC705P9P Microcontroller and 93LC46A EEPROM
93LC46A EEPROM. Note must use 'A' 8 bit version for Kit 53, NOT the 'B' 16 bit version.